home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #034 (19xx)(Amiga User Group Deutschland e.V.).zip / Franz PD Disk #034 (19xx)(Amiga User Group Deutschland e.V.).adf / Briefumschlag / Briefumschlag (.txt) < prev    next >
AmigaBASIC Source Code  |  1987-05-06  |  9KB  |  376 lines

  1. REM ****************************
  2. REM * Briefumschläge drucken ! *
  3. REM **                        **
  4. REM * start: 10 Juni 1989      *
  5. REM * ende:  11 Juni 1989      *
  6. REM ****************************
  7. SCREEN 2,640,210,3,2
  8. LIBRARY "graphics.library"
  9. WINDOW 1,"     *** Briefumschläge drucken Perfekt !! -- © Juni 1989 by Eumelsoft ***",,16,2
  10. PALETTE 4,0.4,0.6,0
  11. MENU 1,0,1,"Projekt"
  12. MENU 1,1,1,"Information"
  13. MENU 1,2,1,"Verlassen"
  14. MENU 2,0,1,"Briefformat"
  15. MENU 2,1,1,"162 x 114 MM"
  16. MENU 2,2,1,"220 x 110 MM"
  17. MENU 3,0,1,"Empfänger"
  18. MENU 3,1,1,"laden"
  19. MENU 3,2,1,"sichern"
  20. MENU 3,3,1,"löschen"
  21. MENU 3,4,1,"ändern"
  22. MENU 3,5,1,"eingeben"
  23. MENU 4,0,1,"Absender"
  24. MENU 4,1,1,"laden"
  25. MENU 4,2,1,"sichern"
  26. MENU 4,3,1,"löschen"
  27. MENU 4,4,1,"ändern"
  28. MENU 4,5,1,"eingeben"
  29. MENU 5,0,1,"Briefdruck"
  30. MENU 5,1,1,"Brief drucken !"
  31. GOSUB anfang
  32.  
  33. start:
  34. ON MENU GOSUB menukontrolle 
  35. MENU ON
  36. GOTO start
  37.  
  38. menukontrolle:
  39. menutitel=MENU(0)
  40. menunr=MENU(1)
  41. ON menutitel GOTO projekt,brieff,empf,abse,druck
  42.  
  43. projekt:
  44. ON menunr GOSUB anfang,ende
  45. RETURN
  46. brieff:
  47. ON menunr GOSUB brief1,brief2
  48. RETURN
  49. empf:
  50. ON menunr GOSUB emladen,emsichern,emloeschen,emaendern,emein
  51. RETURN
  52. abse:
  53. ON menunr GOSUB abladen,absichern,abloeschen,abaendern,abein
  54. RETURN
  55. druck:
  56. ON menunr GOSUB drucken
  57. RETURN
  58.  
  59. anfang:
  60. x2=500:y2=140
  61. LINE (13,13)-(640,180),0,bf
  62. LINE (20,20)-(x2+10,y2+10),2,bf
  63. LINE (15,15)-(x2,y2),1,bf
  64. LINE (14,14)-(x2+1,y2+1),2,b
  65. POKE WINDOW (8)+56,7
  66. COLOR 2,1:LOCATE 5,10
  67. CALL setdrmd&(WINDOW(8),0)
  68. schr$="*** Briefumschläge drucken Perfekt ! ***"
  69. CALL text(WINDOW(8),SADD(schr$),LEN(schr$))
  70. POKE WINDOW (8)+56,4:LOCATE 7,7
  71. schr$="Das Programm ist vollständig Public Domain !" 
  72. CALL text(WINDOW(8),SADD(schr$),LEN(schr$)):LOCATE 8,7
  73. schr$="Es dient zum einfachen, aber kompfortabelen bedrucken"
  74. CALL text(WINDOW(8),SADD(schr$),LEN(schr$)):LOCATE 9,7
  75. schr$="von Briefumschlägen der größen:"
  76. CALL text(WINDOW(8),SADD(schr$),LEN(schr$)):LOCATE 11,7
  77. COLOR 3,2:schr$="162 x 114 Millimeter und 220 x 110 Millimeter"
  78. CALL text(WINDOW(8),SADD(schr$),LEN(schr$)):LOCATE 13,7
  79. COLOR 2,1:schr$="Das Programm wurde programmiert von:"
  80. CALL text(WINDOW(8),SADD(schr$),LEN(schr$)):LOCATE 15,18
  81. COLOR 3,1:POKE WINDOW (8)+56,2:schr$="Martin Jochimczyk"
  82. CALL text(WINDOW(8),SADD(schr$),LEN(schr$)):LOCATE 16,18
  83. schr$="Am Sande 12":CALL text(WINDOW(8),SADD(schr$),LEN(schr$))
  84. POKE WINDOW (8)+56,3:LOCATE 17,18
  85. schr$="2723 Scheeßel":CALL text(WINDOW(8),SADD(schr$),LEN(schr$))
  86. CALL setdrmd&(WINDOW(8),1)
  87. POKE WINDOW (8)+56,0:COLOR 1,0
  88. GOTO start 
  89.  
  90. ende:
  91. x2=500:y2=140
  92. LINE (13,13)-(640,180),0,bf
  93. LINE (20,20)-(x2+10,y2+10),2,bf
  94. LINE (15,15)-(x2,y2),1,bf
  95. LINE (14,14)-(x2+1,y2+1),2,b
  96. POKE WINDOW (8)+56,4
  97. COLOR 2,1:LOCATE 11,20
  98. CALL setdrmd&(WINDOW(8),0)
  99. schr$="Auf Wiedersehen ... !"
  100. CALL text(WINDOW(8),SADD(schr$),LEN(schr$))
  101. LIBRARY CLOSE
  102. FOR i=1 TO 1000:NEXT
  103. SYSTEM
  104.  
  105. briefmalen:
  106. LINE (13,13)-(640,180),0,bf
  107. LINE (20,20)-(x2+10,y2+10),2,bf
  108. LINE (15,15)-(x2,y2),1,bf
  109. LINE (14,14)-(x2+1,y2+1),2,b
  110. GOSUB schreiben
  111. RETURN        
  112.  
  113. schreiben:             
  114. COLOR 2,1 
  115. IF x2=415 THEN q=14:w=2:z=11 
  116. IF x2=560 THEN q=14:w=2:z=25 
  117. LOCATE q-1,w+(LEN(emvorna$)+LEN(emnachna$)+z):PRINT "An"
  118. LOCATE q,w+(LEN(emvorna$)+LEN(emnachna$)+z):PRINT eman$
  119. LOCATE q+1,w+(LEN(emvorna$)+LEN(emnachna$)+z):PRINT emvorna$;" ";emnachna$      
  120. LOCATE q+2,w+(LEN(emvorna$)+LEN(emnachna$)+z):PRINT emstra$;" ";emhausnr$
  121. POKE WINDOW(8)+56,3
  122. LOCATE q+4,w+(LEN(emvorna$)+LEN(emnachna$)+z):PRINT empost$;" ";emstadt$
  123. POKE WINDOW(8)+56,0
  124. LOCATE q-10,w+3:PRINT "Abs.:"
  125. LOCATE q-9,w+3:PRINT abvorna$;" ";abnachna$
  126. LOCATE q-8,w+3:PRINT abstra$;" ";abhausnr$
  127. POKE WINDOW (8)+56,3
  128. LOCATE q-7,w+3:PRINT abpost$;" ";abstadt$
  129. POKE WINDOW (8)+56,0
  130. RETURN
  131.  
  132. brief1:
  133.  x2=415:y2=161
  134.  GOSUB briefmalen
  135. RETURN
  136.  
  137. brief2:
  138.  x2=560:y2=155
  139.  GOSUB briefmalen
  140. RETURN  
  141.  
  142. emladen:
  143.  WINDOW 3,"",(100,41)-(500,90),0,2
  144.  COLOR 4:POKE WINDOW (8)+56,4:CALL setdrmd&(WINDOW(8),0)
  145.  PRINT "Empfängeradresseladen:":COLOR 1:PRINT
  146.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0 
  147.  LINE INPUT"Dateiname:  ";datnam$
  148.  file$=datnam$+".emadr"
  149.  OPEN file$ FOR APPEND AS #2
  150.  l=LOF(2)
  151.  CLOSE #2
  152.  IF l=0 THEN isnicht 
  153.  OPEN "I",#2,file$ 
  154.  WHILE NOT EOF(2)
  155.   INPUT #2,eman$,emvorna$,emnachna$,emstra$
  156.   INPUT #2,emhausnr$,empost$,emstadt$
  157.  WEND 
  158.  COLOR 4:PRINT:PRINT
  159.  PRINT "Alles klar! Ich habe die Daten"
  160.  PRINT:PRINT"Bitte drücke die linke Maustaste"
  161.  CALL wartemaus
  162.  WINDOW CLOSE 3
  163. RETURN  
  164. isnicht:
  165.  COLOR 4:PRINT:PRINT
  166.  PRINT "Die Datei existiert nicht !!"
  167.  PRINT:PRINT "Bitte drücke die linke Maustaste"
  168.  CALL wartemaus
  169.  WINDOW CLOSE 3
  170.  GOTO start
  171.  
  172. emsichern:
  173.  WINDOW 3,"",(100,41)-(500,90),0,2
  174.  COLOR 4:POKE WINDOW (8)+56,4:CALL setdrmd&(WINDOW(8),0)
  175.  PRINT "Empfängeradressesichern:":COLOR 1:PRINT
  176.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0 
  177.  LINE INPUT"Dateiname:  ";datnam$
  178.  file$=datnam$+".emadr"
  179.  OPEN file$ FOR OUTPUT AS #2
  180.   WRITE #2,eman$,emvorna$,emnachna$
  181.   WRITE #2,emstra$,emhausnr$,empost$,emstadt$
  182.  CLOSE #2
  183.  COLOR 4:PRINT:PRINT
  184.  PRINT "Alles klar! Die Daten sind gesichert !"
  185.  PRINT:PRINT"Bitte drücke die linke Maustaste"
  186.  CALL wartemaus
  187.  WINDOW CLOSE 3
  188. RETURN  
  189.  
  190. emloeschen:
  191.  WINDOW 3,"",(100,41)-(500,90),0,2
  192.  COLOR 4:POKE WINDOW (8)+56,4:CALL setdrmd&(WINDOW(8),0)
  193.  PRINT "Empfängeradresselöschen:":COLOR 1:PRINT
  194.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0 
  195.  LINE INPUT"Dateiname:  ";datnam$
  196.  file$=datnam$+".emadr"
  197.  OPEN file$ FOR APPEND AS #2
  198.  l=LOF(2)
  199.  CLOSE #2
  200.  IF l=0 THEN isnicht 
  201.  KILL file$
  202.  COLOR 4:PRINT:PRINT
  203.  PRINT "Alles klar! Die Daten sind gelöscht !"
  204.  PRINT:PRINT"Bitte drücke die linke Maustaste"
  205.  CALL wartemaus
  206.  WINDOW CLOSE 3
  207. RETURN  
  208.  
  209. emein:
  210.  WINDOW 3,"",(100,41)-(500,120),0,2
  211.  COLOR 4:POKE WINDOW (8)+56,4:POKE WINDOW (8)+10,2
  212.  CALL setdrmd&(WINDOW(8),0)
  213.  PRINT "Empfängeradresseeingabe:":COLOR 1:PRINT
  214.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0
  215.  LINE INPUT "An:           ";eman$
  216.  LINE INPUT "Vorname:      ";emvorna$
  217.  LINE INPUT "Nachnahme:    ";emnachna$
  218.  LINE INPUT "Straße:       ";emstra$
  219.  LINE INPUT "Hausnummer:   ";emhausnr$
  220.  LINE INPUT "Postleitzahl: ";empost$
  221.  LINE INPUT "Ort/Stadt:  : ";emstadt$
  222.  POKE WINDOW (8)+10,0
  223.  WINDOW CLOSE 3
  224. RETURN 
  225.  
  226. emaendern:
  227.  WINDOW 3,"",(40,41)-(600,130),0,2
  228.  COLOR 4:POKE WINDOW (8)+56,4 
  229.  CALL setdrmd&(WINDOW(8),0)
  230.  PRINT "Empfängeradresseändern:":COLOR 1:PRINT
  231.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0
  232.  PRINT "An:           ";eman$
  233.  PRINT "Vorname:      ";emvorna$
  234.  PRINT "Nachnahme:    ";emnachna$
  235.  PRINT "Straße:       ";emstra$
  236.  PRINT "Hausnummer:   ";emhausnr$
  237.  PRINT "Postleitzahl: ";empost$
  238.  PRINT "Ort/Stadt:    ";emstadt$
  239.  LOCATE 3,35:LINE INPUT"An:           ";eman$
  240.  LOCATE 4,35:LINE INPUT"Vorname:      ";emvorna$
  241.  LOCATE 5,35:LINE INPUT"Nachnahme:    ";emnachna$
  242.  LOCATE 6,35:LINE INPUT"Straße:       ";emstra$
  243.  LOCATE 7,35:LINE INPUT"Hausnummer:   ";emhausnr$
  244.  LOCATE 8,35:LINE INPUT"Postleitzahl: ";empost$
  245.  LOCATE 9,35:LINE INPUT"Ort/Stadt:    ";emstadt$
  246.  WINDOW CLOSE 3
  247.  RETURN
  248.  
  249. abein:
  250.  WINDOW 3,"",(100,41)-(500,120),0,2
  251.  COLOR 4:POKE WINDOW (8)+56,4:POKE WINDOW (8)+10,2
  252.  CALL setdrmd&(WINDOW(8),0)
  253.  PRINT "Absenderadresseeingabe:":COLOR 1:PRINT
  254.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0
  255.  LINE INPUT "Vorname:      ";abvorna$
  256.  LINE INPUT "Nachnahme:    ";abnachna$
  257.  LINE INPUT "Straße:       ";abstra$
  258.  LINE INPUT "Hausnummer:   ";abhausnr$
  259.  LINE INPUT "Postleitzahl: ";abpost$
  260.  LINE INPUT "Ort/Stadt:  : ";abstadt$
  261.  POKE WINDOW (8)+10,0
  262.  WINDOW CLOSE 3
  263. RETURN 
  264.  
  265. abladen:
  266.  WINDOW 3,"",(100,41)-(500,90),0,2
  267.  COLOR 4:POKE WINDOW (8)+56,4:CALL setdrmd&(WINDOW(8),0)
  268.  PRINT "Absenderadresseladen:":COLOR 1:PRINT
  269.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0 
  270.  LINE INPUT"Dateiname:  ";datnam$
  271.  file$=datnam$+".abadr"
  272.  OPEN file$ FOR APPEND AS #1
  273.  l=LOF(1)
  274.  CLOSE #1
  275.  IF l=0 THEN isnicht 
  276.  OPEN "I",#1,file$ 
  277.  WHILE NOT EOF(1)
  278.   INPUT #1,abvorna$,abnachna$,abstra$
  279.   INPUT #1,abhausnr$,abpost$,abstadt$
  280.  WEND 
  281.  COLOR 4:PRINT:PRINT
  282.  PRINT "Alles klar! Ich habe die Daten"
  283.  PRINT:PRINT"Bitte drücke die linke Maustaste"
  284.  CALL wartemaus
  285.  WINDOW CLOSE 3
  286. RETURN  
  287.  
  288. absichern:
  289.  WINDOW 3,"",(100,41)-(500,90),0,2
  290.  COLOR 4:POKE WINDOW (8)+56,4:CALL setdrmd&(WINDOW(8),0)
  291.  PRINT "Absenderadressesichern:":COLOR 1:PRINT
  292.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0 
  293.  LINE INPUT"Dateiname:  ";datnam$
  294.  file$=datnam$+".abadr"
  295.  OPEN file$ FOR OUTPUT AS #1
  296.   WRITE #1,abvorna$,abnachna$
  297.   WRITE #1,abstra$,abhausnr$,abpost$,abstadt$
  298.  CLOSE #1
  299.  COLOR 4:PRINT:PRINT
  300.  PRINT "Alles klar! Die Daten sind gesichert !"
  301.  PRINT:PRINT"Bitte drücke die linke Maustaste"
  302.  CALL wartemaus
  303.  WINDOW CLOSE 3
  304. RETURN  
  305.  
  306. abaendern:
  307.  WINDOW 3,"",(40,41)-(600,130),0,2
  308.  COLOR 4:POKE WINDOW (8)+56,4 
  309.  CALL setdrmd&(WINDOW(8),0)
  310.  PRINT "Absenderadresseändern:":COLOR 1:PRINT
  311.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0
  312.  PRINT "Vorname:      ";abvorna$
  313.  PRINT "Nachnahme:    ";abnachna$
  314.  PRINT "Straße:       ";abstra$
  315.  PRINT "Hausnummer:   ";abhausnr$
  316.  PRINT "Postleitzahl: ";abpost$
  317.  PRINT "Ort/Stadt:    ";abstadt$
  318.  LOCATE 3,35:LINE INPUT"Vorname:      ";abvorna$
  319.  LOCATE 4,35:LINE INPUT"Nachnahme:    ";abnachna$
  320.  LOCATE 5,35:LINE INPUT"Straße:       ";abstra$
  321.  LOCATE 6,35:LINE INPUT"Hausnummer:   ";abhausnr$
  322.  LOCATE 7,35:LINE INPUT"Postleitzahl: ";abpost$
  323.  LOCATE 8,35:LINE INPUT"Ort/Stadt:    ";abstadt$
  324.  WINDOW CLOSE 3
  325.  RETURN
  326.  
  327. abloeschen:
  328.  WINDOW 3,"",(100,41)-(500,90),0,2
  329.  COLOR 4:POKE WINDOW (8)+56,4:CALL setdrmd&(WINDOW(8),0)
  330.  PRINT "Absenderadresselöschen:":COLOR 1:PRINT
  331.  CALL setdrmd&(WINDOW(8),1):POKE WINDOW(8)+56,0 
  332.  LINE INPUT"Dateiname:  ";datnam$
  333.  file$=datnam$+".abadr"
  334.  OPEN file$ FOR APPEND AS 1
  335.  l=LOF(1)
  336.  CLOSE 1
  337.  IF l=0 THEN isnicht 
  338.  KILL file$
  339.  COLOR 4:PRINT:PRINT
  340.  PRINT "Alles klar! Die Daten sind gelöscht !"
  341.  PRINT:PRINT"Bitte drücke die linke Maustaste"
  342.  CALL wartemaus
  343.  WINDOW CLOSE 3
  344. RETURN  
  345.  
  346. drucken:
  347.  IF x2=415 THEN z=11 
  348.  IF x2=560 THEN z=25 
  349.  OPEN "par:" FOR OUTPUT AS #3
  350.  PRINT #3,""
  351.  PRINT #3,SPC(3);"Abs.:"
  352.  PRINT #3,SPC(3);abvorna$;" ";abnachna$
  353.  PRINT #3,SPC(3);abstra$;" ";abhausnr$
  354.  PRINT #3,SPC(3);CHR$(27);"-";CHR$(1);abpost$;" ";abstadt$;CHR$(27);"-";CHR$(0)
  355.  FOR i=1 TO 5:PRINT #3,"":NEXT
  356.  PRINT #3,CHR$(27);"E" 
  357.  PRINT#3,SPC(2+LEN(emvorna$)+LEN(emnachna$)+z);"An"
  358.  PRINT#3,SPC(2+LEN(emvorna$)+LEN(emnachna$)+z);eman$
  359.  PRINT#3,SPC(2+LEN(emvorna$)+LEN(emnachna$)+z);emvorna$;" ";emnachna$      
  360.  PRINT#3,SPC(2+LEN(emvorna$)+LEN(emnachna$)+z);emstra$;" ";emhausnr$
  361.  PRINT #3,"" 
  362.  PRINT#3,SPC(2+LEN(emvorna$)+LEN(emnachna$)+z);CHR$(27);"-";CHR$(1);empost$;" ";emstadt$;CHR$(27);"-";CHR$(0)
  363.  PRINT #3,CHR$(27);"F"
  364.  CLOSE #3
  365. RETURN
  366.  
  367. SUB wartemaus STATIC
  368.  maus=MOUSE(0)
  369.  loop:
  370.  SLEEP
  371.  IF MOUSE(0)=0 THEN loop
  372. END SUB
  373.  
  374.  
  375.     
  376.